Typing Candidate Generating Method for Enhancing Typing Efficiency

ABSTRACT

For relieving typing burdens caused by incorrect spellings, typing errors, unknown spellings, and characters with diacritical marks, and for enhancing a typing efficiency of a typist with some simplified techniques, several candidate generating methods are provided for assisting the typist to pick a candidate word from a list of generated candidate words, or for selecting a candidate word from said list of generated candidate words in an automatic-selection manner. A proper-designed user interface may also be utilized for implementing the candidate generating methods.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a typing candidate generating method,and more particularly, to a typing candidate generating method forenhancing typing efficiency.

2. Description of the Prior Art

Typing on the computer or handheld devices is not difficult foralphabetic languages since the number of characters in the alphabets isquite limited. The alphabetic languages are also easily mapped tokeypads on a standard keyboard. However, the typing efficiency of thealphabetic languages on the standard keyboard is easily hindered byincorrect spellings, typing errors, unknown spellings, and characterswith diacritical marks (or accent marks). Correcting mistakes caused bysaid factors would obviously slow down the typing speed and interruptsthe thought flow of the typists. Typing a word without knowing the exactspelling also involves a lot of guessing and dictionary look-up. Typingcharacters with diacritical marks (or accent marks) usually requires aspecifically-designed keyboard layout, learning additional keystrokes,or combined keystrokes, which may also slow down said typing speed.

SUMMARY OF THE INVENTION

The claimed invention provides a typing candidate generating method forenhancing typing efficiency. The method includes providing a worddictionary and performing an auto-selection method that generates atleast one candidate word from the word dictionary for adapting auser-typed sentence to match predetermined semantic properties accordingto predetermined statistical data, and utilizing the at least onecandidate word in the user-typed sentence to match the semanticproperties.

The claimed invention provides a typing candidate generating method forenhancing typing efficiency. The method includes providing a phoneticword dictionary. An input word is then segmented into a plurality ofphonetic syllable sequences, each of the plurality of phonetic syllablesequences having a plurality of phonetic syllables. A plurality ofcandidate words including at least one candidate word for each of theplurality of phonetic syllable sequences according to a plurality ofsimilarity matrices of the phonetic word dictionary is generated. Acandidate word is picked from the plurality of candidate words and theinput word is replaced with the picked candidate word, the pickedcandidate word having a smallest total substitution cost larger thanzero of replacing the input word.

The claimed invention provides a typing candidate generating method forenhancing typing efficiency. The method includes providing a worddictionary and determining if at least one candidate word exists, wherethe at least one candidate word is a word in the word dictionary thatcomprises the input word as a subsequence of the at least one candidateword and found anywhere within the at least one candidate word. The atleast one candidate word is selected to replace the input word if it wasdetermined that the at least one candidate word exists.

The claimed invention provides a typing candidate generating method forenhancing typing efficiency. The method includes storing a word sequenceand retrieving a word subsequence of the word sequence utilizing anacronym subsequence comprising a first character of one word and a firstcharacter of a subsequent word of the word sequence ordered in the orderof corresponding words in the word sequence. Different word subsequencesare retrieved from a same word sequence if a different one word and/or adifferent subsequent word are selected. The word subsequence comprisesthe one word, the subsequent word, and all intervening words between theone word and the subsequent word and ordered in the order ofcorresponding words in the word sequence.

The claimed invention provides a typing candidate generating method forenhancing typing efficiency. The method includes providing a worddictionary. At least one candidate word is generated according topossible diacritical marks of characters in an input word. A candidateword is picked from the at least one candidate word. A plurality ofpossible diacritical marks of characters for forming a word is stored inthe word dictionary.

These and other objectives of the present invention will no doubt becomeobvious to those of ordinary skill in the art after reading thefollowing detailed description of the preferred embodiment that isillustrated in the various figures and drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a flow chart of the typing candidate generating method forrelieving incorrect spellings according to the present invention.

FIG. 2 is a flow chart illustrating a candidate generating method of thepresent invention for facilitating a typist with simplified phoneticspellings of typed words.

FIG. 3 is a diagram illustrating a similarity matrix utilized in stepsshown in FIG. 2.

FIG. 4 illustrates a candidate generating method of the presentinvention by inputting a word subsequence of a target word.

FIG. 5 illustrates a candidate generating method of the presentinvention by utilizing acronym subsequences of an original wordsequence.

FIG. 6 illustrates a candidate generating method of the presentinvention for enhancing typing characters with diacritical marks.

DETAILED DESCRIPTION

For preventing a typist from being impeded by the abovementionedmistakes, several typing candidate generating methods are provided inthe present invention for facilitating the typist and overcoming theabovementioned defects.

A first candidate generating method of the present invention is forassisting a typist from being impeded by incorrect spellings. Incorrectspellings include errors of insertion, deletion, substitution, andpermutation. A substitution error occurs if a character of a typed wordis erroneously replaced by another one (or a small character to acapitalized character). A deletion error occurs if a character of atyped word is omitted. An insertion error occurs if an extra characteris typed. A permutation error occurs if the order of two characters isreversed. No matter what type of incorrect spelling error occurs, aslong as the number of spelling errors is small compared to the length ofthe word, a misspelled word will keep enough information to be revised.For example, a misspelled word “phenomanon” is a typo of “phenomenon”,and merely a seventh character “e” is misspelled as “a” (a substitutionerror) with the other nine characters are correctly spelled. Therefore,such information would be employed to revise the misspelled word.

According to the abovementioned concept, the first typing candidategenerating method is provided in the present invention and illustratedin FIG. 1, which is a flow chart of the typing candidate generatingmethod for relieving incorrect spellings. The method illustrated in FIG.1 comprises steps as follows.

Step 102: Provide a word dictionary.

Step 104: Train and test the word dictionary with a large plurality ofsentences having a plurality of related words for establishingpredetermined statistical data associated with semantic properties ofthe large plurality of sentences.

Step 106: Perform an auto-selection method that generates at least onecandidate word from the word dictionary for adapting a user-typedsentence to match semantic properties of the user-typed sentenceaccording to the predetermined statistical data.

Step 108: Calculate an edit distance between a selected word of theuser-typed sentence and each of the at least one candidate word in theword dictionary.

Step 110: Check whether all the calculated edit distances are all largerthan zero. When all the calculated edit distances are all larger thanzero, go to step 112, otherwise, go to step 114.

Step 112: Pick a candidate word having a shortest edit distance from theplurality of candidate words, and replace the selected word with thepicked candidate word.

Step 114: Replace the selected word with a candidate word having an editdistance equivalent to zero.

Step 102 and 104 indicate a procedure for preparing and establishing aword dictionary in advance for later steps shown in FIG. 1 since saidlater steps have to be performed with the aid of said word dictionary.The word dictionary may be a system dictionary, a domain dictionary, ora user dictionary. In some circumstances, the word dictionary comes fromrecent articles or paragraphs of a typist for matching a typing habit ofthe typist. No matter which type of word dictionary is utilized in Step102 and 104, the utilized word dictionary has to be trained or tested toidentify a large enough plurality of sentences, or even for acquiringstatistical data associated with semantic properties of the plurality ofsentences. The statistical data may be a frequency of various words inspecific paragraphs or in a typist-typed paragraph, or be probabilitiesof permutations between various words, etc.

From Step 106 to 114, an auto-selection method is performed fordetermining a most probable candidate word, and for replacing an inputword of the typist with the determined candidate word for matchingsemantic properties of a current sentence having the input word, whichmay be a misspelled word generated from the abovementioned types ofincorrect spellings. Each possible candidate word relating to the inputword is determined from the word dictionary according to an editdistance, which represents an effort of inserting, deleting, orsubstituting characters of the input word for transforming the inputword into the possible candidate word. For example, for transforming aninput word “phenomanon” into the candidate word “phenomenon”, acharacter “a” has to be substituted with a character “e”, and a relatededit distance may be recorded as 1 for merely taking one substitution incharacters. Similarly, when the input word comes to “phnocmanon”, arelated edit distance is 3 for inserting a character “e” between the “h”and the “n”, deleting a character “c” between the “o” and the “m”, andsubstituting a character “a” between the “m” and the “n” with acharacter “e”. Note that the edit distance of the present invention maybe defined in other ways, and should not be restricted by theabovementioned manner.

Having the edit distances of all the candidate words larger than zeroindicates that the input word is a misspelled word. Then a candidateword having a smallest edit distance from the input word isautomatically selected for replacing the input word. However, there maybe more than one candidate word having a same smallest edit distance.For preventing such a situation from being a problem, the abovementionedstatistical data related to semantic properties of a current paragraphhaving the input word is also utilized for determining possiblecandidate words with related edit distances. With the added conditionabout semantic properties, the domain of possible candidate words forthe input word is significantly decreased, and facilitates theefficiency of determining possible candidate words as well as a typingefficiency of the typist. Therefore, the method of relieving incorrectspellings of the present invention works.

Furthermore, an N-gram model method, which follows semantic rules or beutilized in context-free grammars, or a linguistic template-matchingsystem may also be utilized for enhancing the abovementioned method forrelieving incorrect spelling of the present invention.

A user interface may be utilized for implementing the abovementionedmethod for relieving incorrect spelling according to the presentinvention. On the user interface, a plurality of possible candidatewords of an input word may be listed, or even generated by compilingtypist-typed documents while a related word dictionary refers to arecent paragraph typed by a typist. The user interface may also bedesigned for reporting any spelling errors made by the typist andrecording such typing errors. Therefore, the recorded typing errors mayalso be utilized for decreasing the domain of possible candidate wordsalong with the edit distances and the semantic properties. The recordedtyping errors, which include inserting errors, deleting errors,substituting errors (or even permuting errors), may also be recordedalong with sentences or phrases, which have said recorded typing errors,as a type of statistical data to be referenced thereby.

A second candidate generating method of the present invention is forfacilitating a typist with simplified phonetic spellings of typed words.The basic concept of the second candidate generating method is describedas follows. For alphabetic languages, if a typist does not remember howto spell a word, but knows roughly how to pronounce it, then the usercould try to search for the word by guessing its approximatepronunciation. With the idea, a phonetic word dictionary storing a largeplurality of phonetic syllables is required. When a typist cannot spellthe word “bureaucracy” in English, he may type an approximatepronunciation based on a phonetic word, which intends to simulate thecorresponding pronunciation, such as “burocrecy” or “burockrecy”.

On receiving a phonetic word, a corresponding pronunciation of thephonetic word is decoded or guessed by segmenting the phonetic word intophonetic syllables in many possible ways, according to which acorresponding plurality of phonetic syllable sequences are generated.Each phonetic syllable sequence includes a plurality of phoneticsyllables and corresponds to one said possible way.

FIG. 2 is a flow chart illustrating the second candidate generatingmethod of the present invention for facilitating a typist withsimplified phonetic spellings of typed words. The second candidategenerating method comprises the following steps.

Step 202: Provide a phonetic word dictionary.

Step 204: Store a plurality of phonetic syllables in the phoneticdictionary.

Step 206: Calculate a plurality of similarity distances between each ofthe plurality of stored phonetic syllables.

Step 208: Segment an input word into a plurality of phonetic syllablesequences, each of which comprising a plurality of phonetic syllables.

Step 210: Generate a plurality of candidate words comprising at leastone candidate word for each of the plurality of phonetic syllablesequences according to a plurality of similarity matrices of thephonetic word dictionary.

Step 212: Pick a candidate word from the plurality of candidate words,and replace the input word with the picked candidate word having asmallest total substitution cost larger than zero of replacing the inputword.

Steps 202 to 206, similarly to steps from 102 to 104, indicate preparingthe phonetic word dictionary in advance for supporting later steps shownin FIG. 2. Besides the stored phonetic syllables, similarities, whichmay also be denoted as similarity distances, between phonetic syllablesalso have to be calculated and pre-stored in the phonetic worddictionary. A higher similarity distance between a first phoneticsyllable and a second phonetic syllable indicates a smaller substitutioncost of transforming the first phonetic syllable into the secondphonetic syllable by inserting, deleting, substituting, or permutingcharacters of the first phonetic syllable whereas a lower similaritydistance indicates a larger substitution cost, and vice versa. Asimilarity between a first phonetic syllable sequence and a secondphonetic syllable sequence is defined by a similarity matrix. A row ofthe similarity matrix is listed with all phonetic syllables in the firstphonetic syllable sequence whereas a column of the similarity matrix islisted with all phonetic syllables in the second phonetic syllablesequence.

Please refer to FIG. 3, which is a diagram of illustrating saidsimilarity matrix. Assume a similarity matrix A is utilized forindicating a total substitution cost between a first phonetic syllablesequence PS_(row)=(PSR₀,PSR₁,PSR₂, . . . ,PSR_(M-1)), where PSR_(i)(i=0,1,2, . . . ,M−1) indicates an i-th phonetic syllable in thephonetic syllable sequence PS_(row), and a second phonetic syllablesequence PS_(column)=(PSC₀,PSC₁,PSC₂, . . . ,PSC_(N-1)), where PSC_(j)(j=0,1,2, . . . ,N−1) indicates an j-th phonetic syllable in thephonetic syllable sequence PS_(column). Moreover, M indicates adimension of the phonetic syllable sequence PS_(row), and N indicates adimension of the phonetic syllable sequence PS_(column). Then as shownin FIG. 3, a coefficient A_(i,j) indicates a similarity between aphonetic syllable PSR_(i) and a phonetic syllable PSC_(j), where thevalue of said coefficient A_(i,j) ranges from 0 to 1 in a preferredembodiment of the present invention. For calculating a totalsubstitution cost between the phonetic syllable sequences PS_(row) andPS_(column) several possible methods may be utilized. In a preferredembodiment of the present invention, each smallest coefficient A_(i,j)in each row or each column is summed as a representative totalsubstitution cost of the similarity matrix A, or even a smaller totalsummed substitution cost between said row manner and said column manneris retrieved as a representative total substitution cost of thesimilarity matrix A, for comparing with representative totalsubstitution costs of other similarity matrices. The difference betweenthe dimensions of the phonetic syllable sequences PS_(row) andPS_(column) cannot be large, i.e. ∥PS_(row)|−PS_(column)∥≦d for atolerable and properly-chosen value of d, where |PS_(row)| and|PS_(column)| indicate the dimensions of PS_(row) and PS_(column)respectively. In another embodiment of the present invention, adeterminant of the similarity matrix A may also be utilized as arepresentative total substitution cost.

Therefore, similarity distances between all possible phonetic syllablesare all pre-calculated and pre-stored in the phonetic word dictionary aswell. Through steps 208 to 212, the second candidate word generatingmethod is performed for determining a most probable candidate word, andfor replacing an input word, which is inputted according to phoneticspelling, of a typist with the determined candidate word for matchingphonetic properties of the input word with a highest matchingprobability. First, the input word has to be segmented into variouspossible phonetic syllable sequences, which have a plurality of phoneticsyllables and represent various candidate words respectively, accordingto the phonetic spelling of the input word. Under standardcircumstances, the abovementioned value d between both phoneticsequences segmented from the input word and each of said possiblecandidate words would be limited by utilizing a proper algorithm forfiltering out candidate words having an intolerable value of d withrespect to the input word. Then a smallest total substitution cost isgenerated by comparing a plurality of representative total substitutioncosts from various similarity matrices, each of which corresponds to asimilarity between the input word and a possible candidate word asmentioned before. At last, the input word is transformed into a possiblecandidate word having said smallest total substitution cost with respectto said input word by inserting, deleting, substituting, or permutingcharacters of said input word. The aim of the second candidategenerating method according to phonetic properties is thus achieved.

The abovementioned steps may be implemented with a proper-designed userinterface and in an auto-selection manner. Therefore, once a typisttypes an input word according to phonetic spelling, said user interfacemay show a possible candidate word list for the typist to choose onefavorite candidate word, or the input word is automatically replacedwith a most probable candidate word by following the abovementionedprocedures.

Sometimes it is troublesome to type a word having an overly large numberof characters. Therefore, a third candidate generating method of thepresent invention provides a convenient way for mitigating suchinconveniences by typing a subsequence of a word sequence of a targetword, which a typist would like to type originally. For example, a word“psychology” may be typed as “pylg” because the word “psychology”contains all of the letters in the input “pylg” in the same order asfound in the input “pylg”. Based on the subsequence “pylg”, possiblecandidate words, such as “psychological”, “psycholinguistic”,“physiology”, containing “pylg” as a subsequence would be generatedunder with the aid of said third candidate generating method of thepresent invention. While typing an URL or an email address, said methodmay also be utilized. For example, one typist may type a subsequence“shsu” for indicating a word sequencehttp://ias1.iis.sinica.edu.tw/hsu/, which is typed by the typist beforeand stored as a reference.

Please refer to FIG. 4, which illustrates said third candidategenerating method of the present invention by inputting a wordsubsequence of a target word. The steps shown in FIG. 4 are listed asfollows.

Step 302: Provide a word dictionary.

Step 304: Determine if at least one candidate word, which is a word inthe word dictionary that comprises an input word as a subsequence of theat least one candidate word and found anywhere within the at least onecandidate word, exists. When the at least one candidate word exists, goto step 306, otherwise, go to step 308.

Step 306: Select one from the at least one candidate word to replace theinput word.

Step 308: Show a message for indicating an error.

Similar to the abovementioned methods, a word dictionary is alsoprovided for performing later steps. The word dictionary stores aplurality of candidate words, and provides an ability of recognizing asubsequence of the plurality of candidate words. While a typist types aninput word, the word dictionary is searched for possible candidate wordscomprising said input word as a subsequence. If a list of possiblecandidates is found, the typist may choose a preferred word from saidlist of possible candidate words. With a proper-designed user interface,the list of possible candidate words may be displayed in a list forfacilitating such choices of the typist. Moreover, with well-recordedstatistical data, the frequencies of various possible candidate wordsmay be pre-calculated, and such choices may also be automatically madewith said statistical data in an auto-selection manner. However, when nopossible candidate is found, a corresponding error message should alsobe listed to the typist for showing that the typist may have typed anerroneous input word and the input word does not match a subsequence ofany candidate words.

A fourth candidate generating method is utilized on word sequences, suchas phrases or sentences. Based on a word sequence in a sentence or aphrase and has been pre-stored, a corresponding “acronym sequence”taking the first character of each word in the sentence or phrase ispre-stored also. Then the typist may retrieve a continuous subsequenceof words by typing a subsequence of its corresponding acronym sequencein such a way that the first character of the first word is typed first,and the first character of the last word is typed last. For example, ifthe typist has previously typed the following sequence: “I will visitthe University of California at Los Angeles tomorrow”, then acorresponding acronym sequence “iwvtuocalat” is automatically stored.The typist may retrieve the phrase “University of California at LosAngeles”, whose corresponding acronym sequence is “uocala”, by typing“ucla” or “uocla”. Note that the fourth candidate generating method isdifferent from the abovementioned methods so that a phrase dictionary isnot provided for storing the phrase “University of California at LosAngeles”, nor is a retrieval key, such as “ucla”, for the typist tomemorize. The typist has a total freedom to retrieve a phrase or asentence based on any legal acronym subsequence for text typed before orstored in a specific user profile.

The fourth candidate generating method is illustrated in FIG. 5 asfollows.

Step 402: Store a word sequence.

Step 404: Retrieve a word subsequence of the word sequence utilizing anacronym subsequence comprising a first character of one word and a firstcharacter of a subsequent word of the word sequence ordered in the orderof corresponding words in the word sequence.

A user interface may be designed for implementing said method, and forgenerating a possible list of retrieved acronym subsequences to allowselection from the list when more than one acronym subsequence from oneor more word sequences are retrieved utilizing a single acronymsubsequence. The selection may also be implemented in an auto-selectionmanner for choosing a most probable word subsequence or a most probableword sequence according to statistical data or related probabilities.

A fifth candidate generating method of the present invention is utilizedfor enhancing typing characters with diacritical marks. With saidmethod, characters with diacritical marks, for example, “Ö” and “Ü”, maybe replaced by similar “un-marked” characters, such as “O” and “U”. Suchun-marked characters may be converted automatically. Therefore, it isnot necessary to resort to a specifically designed keyboard for mostalphabetic languages containing such marked characters.

The fifth candidate generating method of the present invention isillustrated in FIG. 6 and listed as follows.

Step 502: Provide a word dictionary.

Step 504: Generate at least one candidate word according to possiblediacritical marks of characters in an input word by referring tosemantic word combinations stored in the word dictionary and related toa plurality of possible diacritical marks.

Step 506: Pick a candidate word from the at least one candidate word.

In step 502, a word dictionary is provided for storing candidate wordsrelating to semantic word combinations about characters with diacriticalmarks since a character may have a diacritical mark under certainsituations whereas not have such diacritical mark under othersituations. While a typist types an input word, a plurality of possiblecandidate words is searched according to possible semantic wordcombinations relating to diacritical marks and said input word. At last,the typist may pick one candidate word from the searched plurality ofcandidate words, or a most probable candidate word is pickedautomatically according to related frequencies or probabilities. Awell-designed user interface may also be utilized for implementing thefifth candidate generating method for assisting the typist to choose aproper candidate word by listing said possible candidate words, or forautomatically selecting one most probable candidate word.

Several candidate generating methods are provided in the presentinvention for relieving typing burdens caused by incorrect spellings,typing errors, unknown spellings, and characters with diacritical marks(or accent marks), and for enhancing a typing efficiency of a typistwith some simplified techniques. The methods of the present inventionemploy some concepts, such as candidate word selection based on thecontext of the words in typist-typed sentences or phrases, orself-learning in the context typed by the typist through a user profile.Moreover, by some specific restrictions, possible candidate words may besignificantly decreased for making better predictions in anauto-selection manner.

Many Asian languages adopt an alphabet-based typing method, such asMandarin Pinyin Input, Cangjie Input, or Japanese Kanji Input. In themethods, a string of alphabets forms a code that retrieves a collectionof candidate Asian characters. Therefore, by regarding Asian charactersas words, all the candidate generating methods of the present inventionmay also be utilized for the Asian languages.

Those skilled in the art will readily observe that numerousmodifications and alterations of the device and method may be made whileretaining the teachings of the invention. Accordingly, the abovedisclosure should be construed as limited only by the metes and boundsof the appended claims.

1. A typing candidate generating method for enhancing typing efficiency,comprising: providing a word dictionary; performing an auto-selectionmethod that generates at least one candidate word from the worddictionary for adapting a selected word in a user-typed sentence tomatch semantic properties of the user-typed sentence according topredetermined statistical data; and replacing the selected word with theat least one candidate word.
 2. The method of claim 1 wherein theauto-selection method further comprises: calculating an edit distancebetween the selected word of the user-typed sentence and each of aplurality of candidate words in the word dictionary; and if thecalculated edit distances are all larger than zero, picking a candidateword having a shortest edit distance from the plurality of candidatewords and replacing the selected word with the picked candidate word;wherein the edit distance between the selected word and a correspondingcandidate word is a least number of steps for transforming the selectedword into the corresponding candidate word by operations includinginserting, deleting, and substituting a character.
 3. The method ofclaim 1 wherein the word dictionary is a system dictionary, a domaindictionary, or a user dictionary.
 4. The method of claim 1 furthercomprising: training and testing the word dictionary with a largeplurality of sentences having a plurality of related words forestablishing the predetermined statistical data with the large pluralityof sentences and words of the large plurality of sentences, wherein thepredetermined statistical data is associated with semantic properties ofthe large plurality of sentences.
 5. The method of claim 1 wherein theauto-selection method is utilized according to an N-gram model method orto a linguistic template-matching system.
 6. The method of claim 3further comprising: listing the plurality of candidate words bycompiling user-typed documents; and determining statistical attributesof the user-typed documents.
 7. The method of claim 6 wherein thestatistical attributes are a probability of a candidate word beingchosen from the user-typed documents, or the probability that a specificword combination appears in the user-typed documents.
 8. The method ofclaim 6 wherein typing errors are reported according to the user-typeddocuments.
 9. The method of claim 6 wherein the typing errors areselected from a group consisting of a misspelled phrase, a misspelledsentence, a character-inserting error, a character-deleting error, and acharacter-permuting error.
 10. The method of claim 3 further comprising:providing a user interface for a user to select a candidate word from alist of candidate words generated by the auto-selection method.
 11. Atyping candidate generating method for enhancing typing efficiency,comprising: (a) providing a phonetic word dictionary; (b) segmenting aninput word into a plurality of phonetic syllable sequences, each of theplurality of phonetic syllable sequences comprising a plurality ofphonetic syllables; (c) generating a plurality of candidate words, theplurality of candidate words comprising at least one candidate word foreach of the plurality of phonetic syllable sequences according to aplurality of similarity matrices of the phonetic word dictionary; and(d) picking a candidate word from the plurality of candidate words andreplacing the input word with the picked candidate word, the pickedcandidate word having a smallest total substitution cost larger thanzero of replacing the input word.
 12. The method of claim 11 whereinstep (a) and (c) further comprise: storing a plurality of phoneticsyllables in the phonetic word dictionary; and calculating a pluralityof similarity distances between each of the plurality of stored phoneticsyllables; and wherein a similarity distance is calculated according toa similarity between a first stored phonetic syllable and a secondstored phonetic syllable in the phonetic word dictionary and asubstitution cost of substituting the second stored phonetic syllablewith the first stored phonetic syllable by substituting, inserting,deleting, and permutating some characters of the first stored phoneticsyllable.
 13. The method of claim 12 wherein the plurality of similaritydistances is all larger or equal to 0, and is all smaller or equal to 1.14. The method of claim 12 wherein a similarity matrix is atwo-dimensional matrix generated for a candidate word and a phoneticsyllable sequence; the plurality of phonetic syllables of the candidateword are attributes of a first dimension of the similarity matrix, andthe plurality of phonetic syllables of the phonetic syllable sequenceare attributes of a second dimension of the similarity matrix; elementsof the similarity matrix are similarity distances between each of theplurality of phonetic syllables of the candidate word and each of theplurality of phonetic syllables of the phonetic syllable sequence. 15.The method of claim 14 wherein the total substitution cost of replacingthe input word with the candidate word is determined by calculating adeterminant of the similarity matrix relating to the input word and thephonetic syllable sequence.
 16. The method of claim 14 wherein the totalsubstitution cost of replacing the input word with the candidate word isdetermined by adding related similarity distances in the similaritymatrix relating to the input word and to the phonetic syllable sequence.17. The method of claim 111 wherein the input word is inputted accordingto phonetic spelling.
 18. The method of claim 14 further comprising:providing a user interface; wherein the user interface is utilized forperforming steps (a), (b), (c), and (d).
 19. The method of claim 14further comprising: performing steps (b), (c), and (d) in anauto-selection manner.
 20. A typing candidate generating method forenhancing typing efficiency, comprising: providing a word dictionary;determining if at least one candidate word exists, wherein the at leastone candidate word is a word in the word dictionary that comprises aninput word as a subsequence of the at least one candidate word and foundanywhere within the at least one candidate word; and selecting the atleast one candidate word to replace the input word if it was determinedthat the at least one candidate word exists.
 21. The method of claim 20wherein the word dictionary comprises URLs or e-mail addresses or bothURLs and e-mail addresses.
 22. The method of claim 20 further comprisinggenerating a list of candidate words if it is determined that aplurality of the at least one candidate word exists and selecting the atleast one candidate word to replace the input word from the list. 23.The method of claim 22 wherein a user interface is utilized forselecting from the list.
 24. The method of claim 22 wherein selectingfrom the list is performed in an auto-selection manner.
 25. A typingcandidate generating method for enhancing typing efficiency, comprising:storing a word sequence; and retrieving a word subsequence of the wordsequence utilizing an acronym subsequence comprising a first characterof one word and a first character of a subsequent word of the wordsequence ordered in the order of corresponding words in the wordsequence; wherein the word subsequence comprises the one word, thesubsequent word, and all intervening words between the one word and thesubsequent word and ordered in the order of corresponding words in theword sequence.
 26. The method of claim 25 wherein the acronymsubsequence further comprises a first character of at least one of theintervening words wherein all characters of the acronym subsequence areordered in the order of corresponding words in the word sequence. 27.The method of claim 25 further comprising generating a list of retrievedword subsequences to allow selection from the list utilizing a userinterface if more than one word subsequence from one or more wordsequences are retrieved utilizing a single acronym subsequence.
 28. Themethod of claim 25 further comprising generating an acronym sequencecorresponding to the word sequence, the acronym sequence comprising afirst character of each word in the word sequence ordered in the orderof corresponding words in the word sequence.
 29. The method of 27wherein generating the list of retrieved word subsequences to allowselection from the list comprises: generating the list in anauto-selection manner.
 30. A typing candidate generating method forenhancing typing efficiency, comprising: (a) providing a worddictionary; (b) generating at least one candidate word according topossible diacritical marks of a character in an input word; and (c)picking a candidate word from the at least one candidate word; wherein aplurality of possible diacritical marks of characters for forming a wordis stored in the word dictionary.
 31. The method of claim 30 whereinstep (b) further comprises: referring to semantic word combinationsstored in the word dictionary and related to a plurality of possiblediacritical marks.
 32. The method of claim 30 further comprising:providing a user interface; wherein the user interface is utilized forperforming steps (a) and (b).
 33. The method of claim 30 furthercomprising: performing steps (b) and (c) in an auto-selection manner.